package com.baofu.paycore.common.exception;


 import com.system.commons.exception.ErrorCode;
import lombok.Getter;

/**
 * User: LZQ
 * <p>
 * 注意：错误码定义规则，错误码长度不能超过32位
 * </p>
 */
@Getter
public enum ManagerErrorCode implements ErrorCode {

    /**
     * 系统错误
     */
    SYSTEM_ERROR("SYSTEM_ERROR", "系统错误"),

    /**
     * DATABASE_FORUPDATE_EXCEPTION:获取行锁异常
     */
    DATABASE_FOR_UPDATE_EXCEPTION("DATABASE_FOR_UPDATE_EXCEPTION", "获取行锁异常"),

    /**
     * 金额不符
     */
    AMT_ERROR("AMT_ERROR", "支付金额不符"),

    FEE_AMT_NOT_MORE_PAY_AMT("FEE_AMT_NOT_MORE_PAY_AMT", "手续费金额不能大于等于付款金额"),

    /**
     * 付款方资金单为空
     */
    PAYER_FUND_ORDER_NOT_EXIST("PAYER_FUND_ORDER_NOT_EXIST","付款方资金单为空"),

    /**
     * DATABASE_INSERT_FAILED:数据插入失败
     */
    DATABASE_INSERT_FAILED("DATABASE_INSERT_FAILED", "数据插入失败"),

    /**
     * 暂不支持退手续费
     */
    REFUND_FEE_NOT_SUPPORT("REFUND_FEE_NOT_SUPPORT","暂不支持退手续费"),

    /**
     * 无效的服务码
     */
    NO_SERVICE_CODE("NO_SERVICE_CODE","无效的服务码"),

    /**
     * 转账出入方不能同时为空
     */
    TRANSFER_PARAM_IS_NULL("TRANSFER_PARAM_IS_NULL","转账出入方不能同时为空"),

    /**
     * 转出方不能为空
     */
    TRANSFEROUT_PARAM_IS_NULL("TRANSFEROUT_PARAM_IS_NULL","转出方不能为空");

    /**
     * 错误编码
     */
    private String errorCode;

    /**
     * 错误描述
     */
    private String errorDesc;
    /**
     * 有参构造方法
     *
     * @param errorCode 错误编码
     * @param errorDesc 错误描述
     */
    ManagerErrorCode(String errorCode, String errorDesc) {
        this.errorCode = errorCode;
        this.errorDesc = errorDesc;
    }

    /**
     * 设置错误描述信息
     *
     * @param errorMsg 错误信息
     */
    @Override
    public void setErrorDesc(String errorMsg) { }
}
